home *** CD-ROM | disk | FTP | other *** search
/ Risc World 3 / Risc World 3.iso / SOFTWARE / ISSUE4 / ZAP / !Zap / Modules / !MakeFile / !Help next >
Text File  |  2002-05-08  |  6KB  |  176 lines

  1.  
  2.          ZapMakeFile - A syntax colouring mode for Makefiles
  3.          ===================================================
  4.  
  5. Contents
  6. ========
  7.  
  8. 1.0 : Features.
  9. 2.0 : Installation.
  10. 3.0 : What it does.
  11.   3.1 : Command recognition
  12.   3.2 : Bracket matching
  13.   3.3 : Command completion
  14.   3.4 : Buttons
  15. 4.0 : Problems.
  16. 5.0 : Early history.
  17.  
  18.  
  19. 1.0 Features
  20. ============
  21.  
  22.    + Syntax colouring for Makefiles
  23.    + Bracket matching
  24.    + Command completion
  25.  
  26.  
  27. 2.0 Installation
  28. ================
  29.  
  30. Copy the !MakeFile application into Zap's Modules directory.
  31.  
  32. Zap will then need to be restarted.
  33.  
  34.  
  35. 3.0 What it does
  36. ================
  37.  
  38. It syntax-colours make files.  make is a command line tool which originated
  39. on unix systems to assist management of programming projects.
  40.  
  41. Make files have been around for donkey's years, and in that time have had
  42. many syntactic enhancements to make Joe programmer's life easier. MakeFile mode
  43. doesn't even attempt to colour the more esoteric (but widely used) features of 
  44. make files, concentrating instead on the format accepted by Acorn's AMU. A 
  45. brief overview of what MakeFile mode understands follows:
  46.  
  47. Comments:    anything from # up to the end of the line
  48. Strings:     any text enclosed in double quotes
  49. <...>:       GSTrans system variables or control codes (eg <foo$Dir> or <7>)
  50. $(...):      MakeFile macros. The syntactic equivelent ${...} is also understood.
  51. Commands:    system commands to run in order to make a target.
  52. Punctuation: miscellaneous punctuation characters which may have significance to Make
  53. Numbers:     numbers. Any word starting with a numeric
  54. -switches:   Command line switches. Anything starting with a '-' after a command
  55. +Commands:   More system commands, those only relevant under RISC OS, or rarely used
  56. c.file:      C file names
  57. h.header:    header file names
  58. o.object:    object file names
  59. s.assembler: assembler file names
  60.  
  61. 3.1 : Command recognition
  62. -------------------------
  63.  
  64. Commands are recognised as such when preceeded by whitespace, '@', or '%'. They may
  65. also be preceeded by '-' (which instructs make to ignore errors when executing the
  66. command) if that '-' is the first non-whitespace character on a line, or the first
  67. non-whitespace character after a semicolon. The latter rule is for the
  68.  
  69. target:; command
  70.  
  71. syntax accepted by make.
  72.  
  73. The list of commands understood by MakeFile mode is contained near the end of the
  74. module; you may add extra commands there if you wish, provided the table is kept
  75. in alphabetical order. If you do this, we'd prefer you to send a bug report as well
  76. (see the end of this file) so we can update future versions :)
  77.  
  78.  
  79. 3.2 : Bracket matching
  80. ----------------------
  81.  
  82. MakeFile mode supports bracket matching on certain characters. This means that while
  83. typing in makefiles, when a '>', ')' or '}' character is entered, the cursor 
  84. momentarily jumps back to the corresponding open bracket character. This behaviour 
  85. may be controlled from the MakeFile mode menu = select MakeFile->Match.
  86.  
  87.  
  88. 3.3 : Command completion
  89. ------------------------
  90.  
  91. MakeFile mode also allows commands to be abbreviated in a manner aimilar to Operating
  92. System commands, or as in BASIC. Simply type the beginning of the command name, then
  93. press '.' - the rest of the command will be entered into the file. The minimum number
  94. of characters you can type to make the command prefix unambiguous depends on the 
  95. order of the commands in the table, as such it may change between versions of MakeFile
  96. mode.
  97.  
  98. If you find this behavious annoying, it can be truned off from the MakeFile mode
  99. menu - select MakeFile->Complete.
  100.  
  101.  
  102. 3.4 : Buttons support
  103. ---------------------
  104.  
  105. MakeFile mode has a simple buttons bar which can be turned on from the MakeFile mode
  106. menu. For more information regarding buttons bars, se the help that comes with 
  107. ZapButtons, in the !Zap.Modules.!Buttons directory.
  108.  
  109.  
  110.  
  111. 4.0 : Problems
  112. ==============
  113.  
  114. Mainly oriented around Acorn-style make files.
  115.  
  116. In particular there is not currently any support for the primitive foo.c or
  117. foo/c naming conventions widely in use on other platforms.
  118.  
  119.  
  120. 5.0 : Early history
  121. ===================
  122.  
  123. v0.08 - (25-Feb-02)
  124.       * Command completion now lower case
  125.  
  126. v0.07 - (24-Feb-02)
  127.       * Commands may also be prefixed with %
  128.       * '-' handling improved to allow commands to be prefixed with it, only
  129.         if the characters before the '-' are whitespace or ';'. If this is the
  130.         case, the '-' is a punctuation colour, and the command is a command. 
  131.     Otherwise the whole thing is a switch.
  132.       * Bug fix to allow c++ to be coloured as a command.
  133.       * CMunge, IfThere and Wipe added to the command list
  134.       * ToANSI and ToPCC removed, because they can't be called from makefiles.
  135.  
  136. v0.06 - (23-Feb-02)
  137.       * Commands are only coloured if preceeded by whitespace or '@'. This
  138.         prevents targets like $(TDIR).!Run being coloured as a command.
  139.  
  140. v0.05 - (21-Feb-02)
  141.       * ${...} is now treased as identical to $(...), and both are now
  142.         only coloured if the initial '$' is present.
  143.  
  144. v0.04 - (06-Jul-01)
  145.       * Bugfix to Scripts loading code.
  146.  
  147. v0.03 - (27-Jun-2001)
  148.       * Long switches are now coloured fully
  149.       * as and drlink added to list of recognised commands
  150.       * Fix for bug causing data aborts in new files
  151.  
  152. v0.02 - (10-May-1998)
  153.       * *Help now works.
  154.       * The mode now never makes visual modifications to displayed switches.
  155.  
  156. v0.01 - (03-Apr-1998)
  157.       * First released version.
  158.  
  159.  
  160. 6.0 : Contact
  161. =============
  162.  
  163.   Bug reports should be sent to 
  164.  
  165.         bugs@zap.tartarus.org
  166.  
  167.   Feature requests should be directed towards
  168.  
  169.         zap-features@zap.tartarus.org
  170.  
  171.  
  172. There are a also a number of mailing lists you can subscribe to - see
  173. Zap's web pages for details:
  174.  
  175.         http://zap.tartarus.org/
  176.